<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>Jenkins Git Client Plugin API Overview</title>
</head>
<body>

The Jenkins git client plugin provides an API to execute general-purpose git operations on a local or remote repository.
Its primary use is from the
<a href="https://plugins.jenkins.io/git" target="_blank">git plugin</a>;
as such, it is also used by the
<a href="https://plugins.jenkins.io/gerrit-trigger" target="_blank">gerrit trigger plugin</a>,
<a href="https://plugins.jenkins.io/git-parameter" target="_blank">git parameter plugin</a>,
and the branch source plugins (GitHub branch source, Bitbucket branch source, Gitea, and others).

<p>Plugin developers are encouraged to use
<a href="org/jenkinsci/plugins/gitclient/GitClient.html">GitClient API</a>
instead of the legacy IGitAPI.

<p>The plugin isolates low-level git commands from the git-plugin, allowing alternate git implementations
(like <a href="https://github.com/eclipse-jgit/jgit/wiki/User-Guide"  target="_blank">JGit</a>).</p>

<p>For backwards compatibility, this plugin uses API classes from the hudson.plugins.git package.</p>

<p>The git client plugin bundles JGit and JGit http server.
Callers can rely on JGit and the JGit http server being available without including it in their own plugin packaging.
This reduces the size dependent plugins like git-server plugin, and may be useful in other plugins.</p>

</body>
</html>
